import pandas as pd
import matplotlib.pyplot as plt

# 读取Excel文件
file_path = 'd:\\Users\\Administrator\\Desktop\\git\\数据\\FhjlViewDD.xlsx'
data = pd.read_excel(file_path)

# 检查数据列名
print("可用列名:", data.columns.tolist())

# 配置列名（根据实际数据调整）
date_col = '创建时间'
cargo_col = '货品'
weight_col = '净重'

# 筛选水泥数据
if all(col in data.columns for col in [date_col, cargo_col, weight_col]):
    cement_data = data[data[cargo_col].str.contains('水泥', na=False)]
    
    # 转换日期并筛选6月数据
    cement_data[date_col] = pd.to_datetime(cement_data[date_col])
    june_data = cement_data[cement_data[date_col].dt.month == 6]
    
    # 按日统计
    daily_stats = june_data.groupby(june_data[date_col].dt.date)[weight_col].sum()
    
    # 绘制柱状图
    plt.figure(figsize=(12, 6))
    ax = daily_stats.plot(kind='bar')
    
    # 设置中文字体
    plt.rcParams['font.sans-serif'] = ['SimHei']
    plt.rcParams['axes.unicode_minus'] = False
    
    # 设置图表标题和标签
    plt.title('6月每日水泥货运量趋势（吨）', fontsize=14)
    plt.xlabel('日期', fontsize=12)
    plt.ylabel('货运量（吨）', fontsize=12)
    
    # 格式化x轴日期标签
    ax.set_xticklabels([d.strftime('%Y-%m-%d') for d in daily_stats.index], rotation=45, ha='right')
    
    # 保存图表
    plt.tight_layout()
    plt.savefig('daily_cement_freight_trend.png')
    plt.show()
else:
    print("错误：缺少必要的数据列，请检查列名配置")
    print("当前配置:", {
        '日期列': date_col,
        '货品列': cargo_col,
        '重量列': weight_col
    })
    print("可用列名:", data.columns.tolist())